#ifndef __FILE_TOOL_H__
#define __FILE_TOOL_H__
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>

// 设置阻塞
int set_socket_blocking(int sock_fd);

// 设置非阻塞
int set_socket_noblock(int sock_fd);

// 判断是否为非阻塞
int is_non_blocking(int fd);

// 判断是否为阻塞
int is_blocking(int fd);


// 生成不存在的文件
int createFileIfNotExist(const char* filename); 

// 备份原文件
int backup_file(const char *src, const char *bak);

// 恢复备份文件（返回0成功，-1失败）
int restore_backup(const char *bak, const char *src);
 
// 删除备份文件（返回0成功，-1失败）
int delete_backup(const char *bak);

// 获取文件大小
off_t get_file_size(const char *filename);

// 清空文件
int clear_file(const char* filename);

#endif